#!/bin/bash

# 构建脚本
# 该脚本用于编译项目并将生成的二进制文件和依赖库打包到output目录

set -e  # 遇到错误时终止脚本

echo "清理旧的构建和输出目录..."

# 删除旧的构建和输出目录（如果存在）
rm -rf build output

echo "开始构建项目..."

# 创建构建目录
mkdir -p build
cd build

# 配置项目
cmake ..

# 编译项目
make -j$(nproc)

echo "项目构建完成"

# 返回项目根目录
cd ..

# 创建输出目录
mkdir -p output

echo "开始打包文件到output目录..."

# 复制生成的二进制文件
cp build/monitor_main output/

# 复制配置文件目录（不包括proto相关文件）
mkdir -p output/config/plan
cp config/plan/example.pb.txt output/config/plan/

# 复制运行脚本到output目录
cp run.sh output/

echo "打包完成!"
echo "生成的文件位于 output/ 目录中"
echo "要运行监控工具，请执行: cd output && ./run.sh"